Python中的TfidfVectorizer参数解析 |
您所在的位置:网站首页 › python vector函数 › Python中的TfidfVectorizer参数解析 |
vectorizer = CountVectorizer() #构建一个计算词频(TF)的玩意儿,当然这里面不足是可以做这些 transformer = TfidfTransformer() #构建一个计算TF-IDF的玩意儿 tfidf = transformer.fit_transform(vectorizer.fit_transform(corpus)) #vectorizer.fit_transform(corpus)将文本corpus输入,得到词频矩阵 #将这个矩阵作为输入,用transformer.fit_transform(词频矩阵)得到TF-IDF权重矩阵 TfidfTransformer + CountVectorizer = TfidfVectorizer 值得注意的是,CountVectorizer()和TfidfVectorizer()里面都有一个成员叫做vocabulary_(后面带一个下划线) 这个成员的意义是词典索引,对应的是TF-IDF权重矩阵的列,只不过一个是私有成员,一个是外部输入,原则上应该保持一致。 vectorizer = TfidfVectorizer(stop_words=stpwrdlst, sublinear_tf = True, max_df = 0.5) 关于参数: input:string{'filename', 'file', 'content'} 如果是'filename',序列作为参数传递给拟合器,预计为文件名列表,这需要读取原始内容进行分析 如果是'file',序列项目必须有一个”read“的方法(类似文件的对象),被调用作为获取内存中的字节数 否则,输入预计为序列串,或字节数据项都预计可直接进行分析。 encoding:string, ‘utf-8’by default 如果给出要解析的字节或文件,此编码将用于解码 decode_error: {'strict', 'ignore', 'replace'} 如果一个给出的字节序列包含的字符不是给定的编码,指示应该如何去做。默认情况下,它是'strict',这意味着的UnicodeDecodeError将提高,其他值是'ignore'和'replace' strip_accents: {'ascii', 'unicode', None} 在预处理步骤中去除编码规则(accents),”ASCII码“是一种快速的方法,仅适用于有一个直接的ASCII字符映射,"unicode"是一个稍慢一些的方法,None(默认)什么都不做 analyzer:string,{'word', 'char'} or callable 定义特征为词(word)或n-gram字符,如果传递给它的调用被用于抽取未处理输入源文件的特征序列 preprocessor:callable or None(default) 当保留令牌和”n-gram“生成步骤时,覆盖预处理(字符串变换)的阶段 tokenizer:callable or None(default) 当保留预处理和n-gram生成步骤时,覆盖字符串令牌步骤 ngram_range: tuple(min_n, max_n) 要提取的n-gram的n-values的下限和上限范围,在min_n |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |